/*
 * To change this license header, choose License Headers in Project Properties.
 * To change this template file, choose Tools | Templates
 * and open the template in the editor.
 */

package taller;

import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import javax.swing.JOptionPane;

/**
 *
 * @author 19145988-1
 */
public class consultas {
    
    
    conectar conexion;
    public consultas(){
        conexion=new conectar();
    }
    
    
    public void agregarUsuario(String rut,String car,String nom,String app,String pass){
        try {
            PreparedStatement st=conexion.getConnection().prepareStatement("INSERT INTO usuarios(RUT,CARGO,NOMBRE,APELLIDO,CLAVE) VALUES (?,?,?,?,?)");
            st.setString(1, rut);
            st.setString(2, car);
            st.setString(3, nom);
            st.setString(4, app);
            st.setString(5, pass);
            st.executeUpdate();
            st.close();
//                   int n=;
//            if(n>1){
//                JOptionPane.showMessageDialog(null,"AGREGADO");
//            }

        } catch (SQLException ex) {
            JOptionPane.showMessageDialog(null,"ERROR AL AGREGAR\n Usuario Ya registrado :(");
        }
    }
    
   /// Metodo Agregar Mantencion
    
    public void agregarMantencion (String secuencia,String descripcion,String fecharecepcion,String fechaentrega,String folio){
        try {
            PreparedStatement st=conexion.getConnection().prepareStatement("INSERT INTO mantencion(Secuencia,Descripcion,Fecha_Recepcion,Fecha_Entrega,Folio) VALUES (?,?,?,?,?)");
            st.setString(1, secuencia);
            st.setString(2, descripcion);
            st.setString(3, fecharecepcion);
            st.setString(4, fechaentrega);
            st.setString(5, folio);
            st.executeUpdate();
            st.close();
     } catch (SQLException ex) {
            JOptionPane.showMessageDialog(null,"Error al Agregar Mantencion\n Mantencion Ya registrada :("+ex);
        }
    }
   /// fin metodo agregar mantencion
    
    /// metodo eliminar mantencion
    public void borrarMantencion(String secuencia){  
            try {                
                PreparedStatement pstm = conexion.getConnection().prepareStatement("delete from mantencion where secuencia= ?");            
                pstm.setString(1, secuencia);                   
                pstm.execute();
                pstm.close();            
            }catch(SQLException e){
            JOptionPane.showMessageDialog(null,"ERRORA AL ELIMINAR \n"+e);
            }            
   }
   /// fin metodo eliminar mantencion
    
    /// metodo modificar mantencion
    
    public void modificarMantencion(String secuencia,String descripcion,String fecharecepcion,String fechaentrega,String folio){
       try {            
            PreparedStatement pstm = conexion.getConnection().prepareStatement("UPDATE mantencion " +
            "set descripcion=?,fecha_recepcion=?,fecha_entrega=?,folio=? where secuencia= ? ");            
            pstm.setString(1, String.valueOf(secuencia));             
            pstm.setString(2, descripcion);
            pstm.setString(3, fecharecepcion);
            pstm.setString(4, fechaentrega);
            pstm.setString(5, folio);
            pstm.execute();
            pstm.close();            
         }catch(SQLException e){
         JOptionPane.showMessageDialog(null,"ERROR AL MODIFICAR \n"+e);
      }
   }
    
    /// fin metodo modificar mantencion
    
   
    public Object [][] getDatos(){
      int registros = 0;
      //obtenemos la cantidad de registros existentes en la tabla
      try{         
         PreparedStatement pstm = conexion.getConnection().prepareStatement("SELECT count(1) as total FROM usuarios ");
         ResultSet res = pstm.executeQuery();
         res.next();
         registros= res.getInt("total");
         res.close();
      }catch(SQLException e){
         JOptionPane.showMessageDialog(null,"ERROR 1 \n"+e);
      }
      
      
    Object[][] data = new String[registros][5];  
    //realizamos la consulta sql y llenamos los datos en "Object"
      try{    
         PreparedStatement pstm = conexion.getConnection().prepareStatement("SELECT " +
            " RUT,CARGO,NOMBRE,APELLIDO,CLAVE " +
            " FROM usuarios" +
            " ORDER BY rut ");
         ResultSet res = pstm.executeQuery();
         int i = 0;
         while(res.next()){
            String rut = res.getString("RUT");
            String car = res.getString("CARGO");
            String nom = res.getString("NOMBRE");
            String appe = res.getString("APELLIDO");
            String cla = res.getString("CLAVE");
            data[i][0] = rut;            
            data[i][1] = car;            
            data[i][2] = nom;            
            data[i][3] = appe;            
            data[i][4] = cla;            
            i++;
         }
         res.close();
          }catch(SQLException e){
         JOptionPane.showMessageDialog(null,"ERROR 2 \n"+e);
    }
    return data;
 }
 
    
   
     // metodo mostrar mantencion
    
    public Object [][] obtenerMantencion(){
      int registros = 0;
      //obtenemos la cantidad de registros existentes en la tabla
      try{         
         PreparedStatement pstm = conexion.getConnection().prepareStatement("SELECT count(1) as total FROM mantencion ");
         ResultSet res = pstm.executeQuery();
         res.next();
         registros= res.getInt("total");
         res.close();
      }catch(SQLException e){
         JOptionPane.showMessageDialog(null,"ERROR 1 \n"+e);
      }
      
      
      
    Object[][] data = new String[registros][5];  
    //realizamos la consulta sql y llenamos los datos en "Object"
      try{    
         PreparedStatement pstm = conexion.getConnection().prepareStatement("SELECT " +
            " secuencia,descripcion,fecha_recepcion,fecha_entrega,folio " +
            " FROM mantencion" +
            " ORDER BY secuencia ");
         ResultSet res = pstm.executeQuery();
         int i = 0;
         while(res.next()){
            String sec = res.getString("secuencia");
            String desc = res.getString("descripcion");
            String fecha_recepcion = res.getString("fecha_recepcion");
            String fecha_entrega = res.getString("fecha_entrega");
            String folio = res.getString("folio");
            data[i][0] = sec;            
            data[i][1] = desc;            
            data[i][2] = fecha_recepcion;            
            data[i][3] = fecha_entrega;            
            data[i][4] = folio;            
            i++;
         }
         res.close();
          }catch(SQLException e){
         JOptionPane.showMessageDialog(null,"ERROR 2 \n"+e);
    }
    return data;
 }
 
     // fin metodo mostrar mantencion
    
    //metodo agregar mantencion repuestos
     public void agregar_mp (String secuencia,String id_repuesto){
        try {
            PreparedStatement st=conexion.getConnection().prepareStatement("INSERT INTO mantencionrepuestos (secuencia,id_repuesto) VALUES (?,?)");
            st.setString(1, secuencia);
            st.setString(2, id_repuesto);
            st.executeUpdate();
            st.close();
//                   int n=;
//            if(n>1){
//                JOptionPane.showMessageDialog(null,"AGREGADO");
//            }

        } catch (SQLException ex) {
            JOptionPane.showMessageDialog(null,"ERROR AL AGREGAR");
        }
    }
    
    //fin metodo agregar mantencion repuestos
     
     
     
     // metodo borrar mantencion repuestos
     
     public void borrar_mp(String secuencia){  
            try {                
                PreparedStatement pstm = conexion.getConnection().prepareStatement("delete from mantencionrepuestos where secuencia = ?");            
                pstm.setString(1, secuencia);                   
                pstm.execute();
                pstm.close();            
            }catch(SQLException e){
            JOptionPane.showMessageDialog(null,"ERRORA AL ELIMINAR \n"+e);
            }            
   }
     
     //fin metodo borrar mantencion repuestos
    
     
     //metodo modificar mp
     
     public void modificar_mp(String secuencia,String id_repuesto){
       try {            
            PreparedStatement pstm = conexion.getConnection().prepareStatement("UPDATE mantencionrepuestos " +
            "set secuencia =?,id_repuesto=?");            
            pstm.setString(1, String.valueOf(secuencia));             
            pstm.setString(2, id_repuesto);
            pstm.execute();
            pstm.close();            
         }catch(SQLException e){
         JOptionPane.showMessageDialog(null,"ERROR AL MODIFICAR \n"+e);
      }
   }
    
     
     //fin metodo modificar mp
     
     
     
     // metodo mostrar mp
     
     public Object [][] mostrar_mp(){
      int registros = 0;
      //obtenemos la cantidad de registros existentes en la tabla
      try{         
         PreparedStatement pstm = conexion.getConnection().prepareStatement("SELECT count(1) as total FROM mantencionrepuestos ");
         ResultSet res = pstm.executeQuery();
         res.next();
         registros= res.getInt("total");
         res.close();
      }catch(SQLException e){
         JOptionPane.showMessageDialog(null,"ERROR 1 \n"+e);
      }
      
      
      
    Object[][] data = new String[registros][2];  
    //realizamos la consulta sql y llenamos los datos en "Object"
      try{    
         PreparedStatement pstm = conexion.getConnection().prepareStatement("SELECT " +
            " secuencia,id_repuesto" +
            " FROM mantencionrepuestos" +
            " ORDER BY secuencia ");
         ResultSet res = pstm.executeQuery();
         int i = 0;
         while(res.next()){
            String secuencia = res.getString("secuencia");
            String id_repuesto = res.getString("id_repuesto");
            data[i][0] = secuencia;            
            data[i][1] = id_repuesto;                      
            i++;
         }
         res.close();
          }catch(SQLException e){
         JOptionPane.showMessageDialog(null,"ERROR 2 \n"+e);
    }
    return data;
 }
     
     // fin metodo mostrar mp
     
     
     
     
    // metodo agregar fa
     
        public void agregar_fa (String folio,String patente,String id_modelo){
        try {
            PreparedStatement st=conexion.getConnection().prepareStatement("INSERT INTO fichaauto(folio,patente,id_modelo) VALUES (?,?,?)");
            st.setString(1, folio);
            st.setString(2, patente);
            st.setString(3, id_modelo);
            
            st.executeUpdate();
            st.close();
     } catch (SQLException ex) {
            JOptionPane.showMessageDialog(null,"Error al Agregar Ficha "+ex);
        }
    }
     
    // fin metodo agregar fa
               
       
        
    // metodo eliminar fa
        
         public void eliminar_fa(String folio){  
            try {                
                PreparedStatement pstm = conexion.getConnection().prepareStatement("delete from fichaauto where folio= ?");            
                pstm.setString(1, folio);                   
                pstm.execute();
                pstm.close();            
            }catch(SQLException e){
            JOptionPane.showMessageDialog(null,"ERRORA AL ELIMINAR \n"+e);
            }            
   }
        
    // fin metodo eliminar fa
    
    // metodo modificar fa
         
         public void modificar_fa (String folio, String patente, String id_modelo){
       try {            
            PreparedStatement pstm = conexion.getConnection().prepareStatement("UPDATE fichaauto " +
            "set folio=?,patente=?,id_modelo where folio= ? ");            
            pstm.setString(1, folio);                   
            pstm.setString(2, patente);
            pstm.setString(3, id_modelo);
            pstm.execute();
            pstm.close();            
         }catch(SQLException e){
         JOptionPane.showMessageDialog(null,"ERROR AL MODIFICAR \n"+e);
      }
   }
         
    // fin metodo modificar fa     
      
         
         
    // metodo mostrar fa
         
         public Object [][] mostrar_fa(){
      int registros = 0;
      //obtenemos la cantidad de registros existentes en la tabla
      try{         
         PreparedStatement pstm = conexion.getConnection().prepareStatement("SELECT count(1) as total FROM fichaauto ");
         ResultSet res = pstm.executeQuery();
         res.next();
         registros= res.getInt("total");
         res.close();
      }catch(SQLException e){
         JOptionPane.showMessageDialog(null,"ERROR 1 \n"+e);
      }
      
      
      
    Object[][] data = new String[registros][3];  
    //realizamos la consulta sql y llenamos los datos en "Object"
      try{    
         PreparedStatement pstm = conexion.getConnection().prepareStatement("SELECT " +
            " folio,patente,id_repuesto" +
            " FROM fichaauto" +
            " ORDER BY folio ");
         ResultSet res = pstm.executeQuery();
         int i = 0;
         while(res.next()){
            String folio = res.getString("folio");
            String patente = res.getString("patente");
            String id_modelo = res.getString("id_modelo");
            data[i][0] = folio;            
            data[i][1] = patente; 
            data[i][2] = id_modelo;
            i++;
         }
         res.close();
          }catch(SQLException e){
         JOptionPane.showMessageDialog(null,"ERROR 2 \n"+e);
    }
    return data;
 }
       
    // fin metodo mostrar fa     
         
 public void deletePersona(String cod){  
            try {                
                PreparedStatement pstm = conexion.getConnection().prepareStatement("delete from usuarios where rut= ?");            
                pstm.setString(1, cod);                   
                pstm.execute();
                pstm.close();            
            }catch(SQLException e){
            JOptionPane.showMessageDialog(null,"ERRORA AL ELIMINAR \n"+e);
            }            
   }
 
 public void updatePersona(String rut, String car, String nom, String app, String cla){
       try {            
            PreparedStatement pstm = conexion.getConnection().prepareStatement("UPDATE usuarios " +
            "set CARGO=?,NOMBRE=?,APELLIDO=?,CLAVE=? where RUT= ? ");            
            pstm.setString(1, car);                   
            pstm.setString(2, nom);
            pstm.setString(3, app);
            pstm.setString(4, cla);
            pstm.setString(5, String.valueOf(rut));
            pstm.execute();
            pstm.close();            
         }catch(SQLException e){
         JOptionPane.showMessageDialog(null,"ERROR AL MODIFICAR \n"+e);
      }
   }
 
  public void agregarRepuestos(String id,String descr){
        try {
            PreparedStatement st=conexion.getConnection().prepareStatement("INSERT INTO Repuestos(Id_repuesto,Descripcion) VALUES (?,?)");
            st.setString(1, id);
            st.setString(2, descr);
            st.executeUpdate();
            st.close();
        } catch (SQLException ex) {
            JOptionPane.showMessageDialog(null,"Repuesto Ya registrado\n Cambie el codigo");
        }
    }


    
 public void crear_ficha (int Idmecanico, String Rutcliente, int Secuencia, String FechaRecepcion, String Fechaentrega,
         int Patente, int Folio, int Idmodelo, String Descripcion, String Cilindrada, String Color, String Marca ){
        try {
            PreparedStatement st=conexion.getConnection().prepareStatement("INSERT INTO usuarios(RUT,CARGO,NOMBRE,APELLIDO,CLAVE) VALUES (?,?,?,?,?)");
            st.setInt(1, Idmecanico);
            st.setString(2, Rutcliente);
            st.setInt(3, Secuencia);
            st.setString(4, FechaRecepcion);
            st.setString(5, Fechaentrega);
            st.setInt(6, Patente);
            st.setInt(7, Folio);
            st.setInt(8, Idmodelo);
            st.setString(9, Descripcion);
            st.setString(10, Cilindrada);
            st.setString(11, Color);
            st.setString(12, Marca);
            
            st.executeUpdate();
            st.close();
//                   int n=;
//            if(n>1){
//                JOptionPane.showMessageDialog(null,"AGREGADO");
//            }

        } catch (SQLException ex) {
            JOptionPane.showMessageDialog(null,"ERROR AL AGREGAR\n Usuario Ya registrado :(");
        }
    }
 
        public void agregarmarca(String id,String descr){
        try {
            PreparedStatement st=conexion.getConnection().prepareStatement("INSERT INTO Marcas(Id_marca,Descripcion) VALUES (?,?)");
            st.setString(1, id);
            st.setString(2, descr);
            st.executeUpdate();
            st.close();
        } catch (SQLException ex) {
            JOptionPane.showMessageDialog(null,"ERROR AL AGREGAR\n Repuesto Ya registrado :(");
        }
    }
        public Object [][] getRepuestos(){
      int registros = 0;
      //obtenemos la cantidad de registros existentes en la tabla
      try{         
         PreparedStatement pstm = conexion.getConnection().prepareStatement("SELECT count(1) as total FROM repuestos ");
         ResultSet res = pstm.executeQuery();
         res.next();
         registros= res.getInt("total");
         res.close();
      }catch(SQLException e){
         JOptionPane.showMessageDialog(null,"ERROR 1 \n"+e);
      }
      
      
    Object[][] data = new String[registros][5];  
    //realizamos la consulta sql y llenamos los datos en "Object"
      try{    
         PreparedStatement pstm = conexion.getConnection().prepareStatement("SELECT " +
            " Id_repuesto,Descripcion FROM repuestos ORDER BY Id_repuesto");
         ResultSet res = pstm.executeQuery();
         int i = 0;
         while(res.next()){
            String rut = res.getString("Id_repuesto");
            String car = res.getString("Descripcion");
            data[i][0] = rut;            
            data[i][1] = car;            
            i++;
         }
         res.close();
          }catch(SQLException e){
         JOptionPane.showMessageDialog(null,"ERROR 2 \n"+e);
    }
    return data;
 }
 
    public void deleterepuesto(String cod){  
            try {                
                PreparedStatement pstm = conexion.getConnection().prepareStatement("delete from repuestos where id_repuesto= ?");            
                pstm.setString(1, cod);                   
                pstm.execute();
                pstm.close();            
            }catch(SQLException e){
            JOptionPane.showMessageDialog(null,"ERRORA AL ELIMINAR \n"+e);
            }            
   }
    
    public void agregarCliente(String rut,String nom,String ape,String tele){
        try {
            PreparedStatement st=conexion.getConnection().prepareStatement("INSERT INTO cliente(RUT,NOMBRE,APELLIDO,TELEFONO) VALUES (?,?,?,?)");
            st.setString(1, rut);
            st.setString(2, nom);
            st.setString(3, ape);
            st.setString(4, tele);
            st.executeUpdate();
            st.close();
        } catch (SQLException ex) {
            JOptionPane.showMessageDialog(null,"ERROR AL AGREGAR\n Usuario Ya registrado :("+ex);
        }
        
        
    }
    
    public Object [][] getCliente(){
      int registros = 0;
      //obtenemos la cantidad de registros existentes en la tabla
      try{         
         PreparedStatement pstm = conexion.getConnection().prepareStatement("SELECT count(1) as total FROM CLIENTE");
         ResultSet res = pstm.executeQuery();
         res.next();
         registros= res.getInt("total");
         res.close();
      }catch(SQLException e){
         JOptionPane.showMessageDialog(null,"ERROR 1 \n"+e);
      }
      
      
    Object[][] data = new String[registros][4];  
    //realizamos la consulta sql y llenamos los datos en "Object"
      try{    
         PreparedStatement pstm = conexion.getConnection().prepareStatement("SELECT RUT,NOMBRE,APELLIDO,TELEFONO FROM cliente ORDER BY rut ");
         ResultSet res = pstm.executeQuery();
         int i = 0;
         while(res.next()){
            String rut = res.getString("RUT");
            String nom = res.getString("NOMBRE");
            String ape = res.getString("APELLIDO");
            String tel = res.getString("TELEFONO");
            data[i][0] = rut;            
            data[i][1] = nom;            
            data[i][2] = ape;            
            data[i][3] = tel;            
            i++;
         }
         res.close();
          }catch(SQLException e){
         JOptionPane.showMessageDialog(null,"ERROR 2 \n"+e);
    }
    return data;
 }
 
 public void deleteCliente(String cod){  
            try {                
                PreparedStatement pstm = conexion.getConnection().prepareStatement("delete from CLIENTE where rut= ?");            
                pstm.setString(1, cod);                   
                pstm.execute();
                pstm.close();            
            }catch(SQLException e){
            JOptionPane.showMessageDialog(null,"ERROR AL ELIMINAR \n"+e);
            }            
   }
 
 public void updateClientes(String rut, String nom, String ape, String tele){
       try {            
            PreparedStatement pstm = conexion.getConnection().prepareStatement("UPDATE Cliente set NOMBRE=?,APELLIDO=?,TELEFONO=? where RUT= ? ");            
            pstm.setString(1, nom);                   
            pstm.setString(2, ape);
            pstm.setString(3, tele);
            pstm.setString(4, String.valueOf(rut));
            pstm.execute();
            pstm.close();            
         }catch(SQLException e){
         JOptionPane.showMessageDialog(null,"ERROR AL MODIFICAR \n"+e);
      }
   }
 
 
 public void agregarAutos(String pate,String rut,String id){
        try {
            PreparedStatement st=conexion.getConnection().prepareStatement("INSERT INTO Autos(PATENTE,RUT,ID_MODELO) VALUES (?,?,?)");
            st.setString(1, pate);
            st.setString(2, rut);
            st.setString(3, id);
            st.executeUpdate();
            st.close();
        } catch (SQLException ex) {
            JOptionPane.showMessageDialog(null,"ERROR AL AGREGAR\n Usuario Ya registrado :("+ex);
        }
        
        
    }
    
    public Object [][] getAutos(){
      int registros = 0;
      //obtenemos la cantidad de registros existentes en la tabla
      try{         
         PreparedStatement pstm = conexion.getConnection().prepareStatement("SELECT count(1) as total FROM AUTOS");
         ResultSet res = pstm.executeQuery();
         res.next();
         registros= res.getInt("total");
         res.close();
      }catch(SQLException e){
         JOptionPane.showMessageDialog(null,"ERROR 1 \n"+e);
      }
      
      
    Object[][] data = new String[registros][3];  
    //realizamos la consulta sql y llenamos los datos en "Object"
      try{    
         PreparedStatement pstm = conexion.getConnection().prepareStatement("SELECT PATENTE,RUT,ID_MODELO FROM AUTOS ORDER BY patente ");
         ResultSet res = pstm.executeQuery();
         int i = 0;
         while(res.next()){
            String pate = res.getString("PATENTE");
            String rut = res.getString("RUT");
            String id = res.getString("ID_MODELO");
            data[i][0] = pate;            
            data[i][1] = rut;            
            data[i][2] = id;                  
            i++;
         }
         res.close();
          }catch(SQLException e){
         JOptionPane.showMessageDialog(null,"ERROR 2 \n"+e);
    }
    return data;
 }
 
 public void deleteAutos(String cod){  
            try {                
                PreparedStatement pstm = conexion.getConnection().prepareStatement("delete from Autos where patente= ?");            
                pstm.setString(1, cod);                   
                pstm.execute();
                pstm.close();            
            }catch(SQLException e){
            JOptionPane.showMessageDialog(null,"ERROR AL ELIMINAR \n"+e);
            }            
   }
 
 public Object [][] getMarca(){
      int registros = 0;
      //obtenemos la cantidad de registros existentes en la tabla
      try{         
         PreparedStatement pstm = conexion.getConnection().prepareStatement("SELECT count(1) as total FROM marca ");
         ResultSet res = pstm.executeQuery();
         res.next();
         registros= res.getInt("total");
         res.close();
      }catch(SQLException e){
         JOptionPane.showMessageDialog(null,"ERROR 1 \n"+e);
      }
   Object[][] data = new String[registros][4];  
    //realizamos la consulta sql y llenamos los datos en "Object"
      try{    
         PreparedStatement pstm = conexion.getConnection().prepareStatement("SELECT Codigo_Marca,Descripcion, FROM marca ORDER BY codigo ");
         ResultSet res = pstm.executeQuery();
         int i = 0;
         while(res.next()){
            String cod = res.getString("Codigo_Marca");
            String des = res.getString("Descripcion");
            data[i][0] = cod;            
            data[i][1] = des;                        
            i++;
         }
         res.close();
          }catch(SQLException e){
         JOptionPane.showMessageDialog(null,"ERROR 2 \n"+e);
    }
    return data;
 }
    public void deletemarca(String cod){  
            try {                
                PreparedStatement pstm = conexion.getConnection().prepareStatement("delete from marca where codigo_marca= ?");            
                pstm.setString(1, cod);                   
                pstm.execute();
                pstm.close();            
            }catch(SQLException e){
            JOptionPane.showMessageDialog(null,"ERROR AL ELIMINAR \n"+e);
            }            
}
public void agregarmodelo(String id,String Descr,String Cilindrada, String Color, String id_marca){
        try {
            PreparedStatement st=conexion.getConnection().prepareStatement("INSERT INTO Modelo(Id_modelo,Descripcion,Cilindrada,Color,id_marca) VALUES (?,?,?,?,?)");
            st.setString(1, id);
            st.setString(2, Descr);
            st.setString(3, Cilindrada);
            st.setString(4, Color);
            st.setString(5, id_marca);
            st.executeUpdate();
            st.close();
        } catch (SQLException ex) {
            JOptionPane.showMessageDialog(null,"ERROR AL AGREGAR\n Repuesto Ya registrado :(");
        }
    }

 
 public void modificarmodelo(String id ,String Descr,String Cilindrada, String Color, String id_marca){
       try {            
            PreparedStatement pstm = conexion.getConnection().prepareStatement("UPDATE modelo " +
            "set id=?,Descripcion=?,Cilindrada=?,Color=?, id_marca=?,");            
            pstm.setString(1, id);                   
            pstm.setString(2, Descr);
            pstm.setString(3, Cilindrada);
            pstm.setString(4, Color);
            pstm.setString(5, id_marca);          
            pstm.execute();
            pstm.close();            
         }catch(SQLException e){
         JOptionPane.showMessageDialog(null,"ERROR AL MODIFICAR \n"+e);
      }
 }
 
 public void deletemodelo(String cod){  
            try {                
                PreparedStatement pstm = conexion.getConnection().prepareStatement("delete from modelo where id modelo= ?");            
                pstm.setString(1, cod);                   
                pstm.execute();
                pstm.close();            
            }catch(SQLException e){
            JOptionPane.showMessageDialog(null,"ERROR AL ELIMINAR \n"+e);
            }            
    }
 
 public Object [][] getModelo(){
      int registros = 0;
      //obtenemos la cantidad de registros existentes en la tabla
      try{         
         PreparedStatement pstm = conexion.getConnection().prepareStatement("SELECT count(1) as total FROM modelo ");
         ResultSet res = pstm.executeQuery();
         res.next();
         registros= res.getInt("total");
         res.close();
      }catch(SQLException e){
         JOptionPane.showMessageDialog(null,"ERROR 1 \n"+e);
      }
   Object[][] data = new String[registros][5];  
    //realizamos la consulta sql y llenamos los datos en "Object"
      try{    
         PreparedStatement pstm = conexion.getConnection().prepareStatement("SELECT id modelo,Descripcion,Cilindrada,Color,id_marca FROM modelo ORDER BY id ");
         ResultSet res = pstm.executeQuery();
         int i = 0;
         while(res.next()){
            String id = res.getString("id modelo");
            String des = res.getString("Descripcion");
            String cil = res.getString("Cilindrada");
            String col = res.getString("Color");
            String id_marca = res.getString("id_marca");           
            data[i][0] = id;            
            data[i][1] = des;
            data[i][2] = cil;
            data[i][3] = col;
            data[i][4] = id_marca;
            i++;
         }
         res.close();
          }catch(SQLException e){
         JOptionPane.showMessageDialog(null,"ERROR 2 \n"+e);
    }
    return data;
 }

}
